package com.baili.healthsystem.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author：ShenJiaFeng
 * @Package：com.baili.healthsystem.domain.request
 * @Project：baili-health-cloud
 * @name：User
 * @Date：2024/5/24 19:30
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName(value = "t_user")
public class User {
    /**
     * 用户id
     */
    @TableId(type = IdType.AUTO)
    private Long userId;
    /**
     * 用户名
     */
    private String userName;
    /**
     * 真实姓名
     */
    private String realName;
    /**
     * 所属医院
     */
    private String hospital;
    /**
     * 所属科室id
     */
    private Long officeId;
    /**
     * 职称id
     */
    private Long positionId;
    /**
     * 用户密码
     */
    private String userPwd;
    /**
     * 用户邮箱
     */
    private String userEmail;
    /**
     * 用户角色
     */
    private Integer role;
    /**
     * 形象照
     */
    private String userImagePhoto;
    /**
     * 身份证号
     */
    private String userIdCard;
    /**
     * 乐观锁
     */
    private Integer positiveLock;
    /**
     * 用户余额
     */
    private BigDecimal userBalance;
    /**
     * 好评率
     */
    private Integer praise;
    /**
     * 服务患者数
     */
    private String serverNum;
    /**
     * 咨询价格（H币）
     */
    private BigDecimal serverPrice;
    /**
     * 好评数
     */
    private Integer praiseNum;
    /**
     * 差评数
     */
    private Integer badNum;
    /**
     * 个人简介
     */
    private String userIntro;
    /**
     * 擅长领域
     */
    private String userGoodSkill;
    /**
     * 手机号
     */
    private String phone;
    /**
     * 创建人
     */
    private String createBy;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-年MM-月dd日 HH-mm-ss")
    @JsonFormat(pattern = "yyyy-年MM-月dd日 HH-mm-ss", timezone = "GMT+8")
    private Date createTime;
    /**
     * 修改人
     */
    private String updateBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-年MM-月dd日 HH-mm-ss")
    @JsonFormat(pattern = "yyyy-年MM-月dd日 HH-mm-ss", timezone = "GMT+8")
    private Date updateTime;
    /**
     * 租户id
     */
    private Integer renterId;
    /**
     * 用户头像
     */
    private String userAvatar;
    /**
     * 逻辑删除 1.未删除  2.删除
     */
    private Integer isDelete;
}
